package com.deer.wms.kuaidiniao.model;

import com.alibaba.fastjson.JSON;
import com.deer.wms.kuaidiniao.constant.KuaidiniaoConstant;
import com.deer.wms.kuaidiniao.utils.Utils;

/**
 * 系统级参数
 * */
public class KuaiDiNiaoRequestData {

    /***
     * 业务参数
     */
    private RequestData requestData;

    /***
     * 商户ID，请在我的服务页面查看。	R
     */
    private String EBusinessID;

    /***
     * 请求指令类型
     */
    private String RequestType;

    /***
     * 数据内容签名：把(请求内容(未编码)+AppKey)进行MD5加密，然后Base64编码，最后 进行URL(utf-8)编码。详细过程请查看Demo。	R
     */
    private String DataSign;

    /***
     * 请求、返回数据类型：只支持JSON格式
     */
    private String DataType = "JSON" ;


    public RequestData getRequestData() {
        return requestData;
    }

    public void setRequestData(RequestData requestData) {
        this.requestData = requestData;
    }

    public String getEBusinessID() {
        return EBusinessID;
    }

    public void setEBusinessID(String EBusinessID) {
        this.EBusinessID = EBusinessID;
    }

    public String getRequestType() {
        return RequestType;
    }

    public void setRequestType(String requestType) throws Exception {
        RequestType = requestType;
        //将一个java对象转换为Json字符串
        String requestData = JSON.toJSONString(requestType);
        DataSign = Utils.encrypt(requestData, KuaidiniaoConstant.AppKey, "UTF-8");
    }

    public String getDataSign() {
        return DataSign;
    }

    public void setDataSign(String dataSign) {
        DataSign = dataSign;
    }

    public String getDataType() {
        return DataType;
    }

    public void setDataType(String dataType) {
        DataType = dataType;
    }
}
